home *** CD-ROM | disk | FTP | other *** search
/ Champak 33 / Volume 33 - JOGO DISK .iso / Games / quick_stack.swf / scripts / frame_12 / DoAction.as
Text File  |  2007-01-15  |  12KB  |  440 lines

  1. function setLevelVars()
  2. {
  3.    if(level == 1)
  4.    {
  5.       barSpeed = 0.4;
  6.       tileColors = 4;
  7.    }
  8.    if(level == 2)
  9.    {
  10.       barSpeed = 0.4;
  11.       tileColors = 5;
  12.    }
  13.    if(level == 3)
  14.    {
  15.       barSpeed = 0.5;
  16.       tileColors = 5;
  17.    }
  18.    if(level == 4)
  19.    {
  20.       barSpeed = 0.6;
  21.       tileColors = 6;
  22.    }
  23.    if(level == 5)
  24.    {
  25.       barSpeed = 0.7;
  26.       tileColors = 6;
  27.    }
  28.    if(level == 6)
  29.    {
  30.       barSpeed = 0.7;
  31.       tileColors = 7;
  32.    }
  33.    if(level == 7)
  34.    {
  35.       barSpeed = 0.7;
  36.       tileColors = 7;
  37.    }
  38.    if(level > 7)
  39.    {
  40.       barSpeed = 0.8;
  41.       tileColors = 8;
  42.    }
  43. }
  44. function released()
  45. {
  46.    if(loaded == true)
  47.    {
  48.       pushing = true;
  49.       loaded = false;
  50.       pushedAt = lastUp;
  51.       var _loc1_ = 0;
  52.       _loc1_ = 11;
  53.       while(_loc1_ > lastUp)
  54.       {
  55.          t1_mc = game_mc["leftTile_" + _loc1_];
  56.          t2_mc = game_mc["rightTile_" + _loc1_];
  57.          t1a_mc = game_mc["leftTile_" + (_loc1_ - 1)];
  58.          t2a_mc = game_mc["rightTile_" + (_loc1_ - 1)];
  59.          t1_mc.gotoAndStop(t1a_mc._currentframe);
  60.          t2_mc.gotoAndStop(t2a_mc._currentframe);
  61.          t1_mc._visible = t1a_mc._visible;
  62.          t2_mc._visible = t2a_mc._visible;
  63.          _loc1_ = _loc1_ - 1;
  64.       }
  65.       t1_mc = game_mc["leftTile_" + pushedAt];
  66.       t2_mc = game_mc["rightTile_" + pushedAt];
  67.       t1_mc._visible = false;
  68.       t2_mc._visible = false;
  69.    }
  70.    scoreFactor = 1;
  71. }
  72. function resetAllTilesPosition()
  73. {
  74.    var _loc1_ = 0;
  75.    _loc1_ = 0;
  76.    while(_loc1_ < 12)
  77.    {
  78.       t1_mc = game_mc["leftTile_" + _loc1_];
  79.       t2_mc = game_mc["rightTile_" + _loc1_];
  80.       t1_mc._y = t1_mc.y;
  81.       t2_mc._y = t2_mc.y;
  82.       _loc1_ = _loc1_ + 1;
  83.    }
  84. }
  85. function setAllTilesPosition(newUp)
  86. {
  87.    var _loc2_ = newUp;
  88.    var _loc1_ = 0;
  89.    _loc1_ = _loc2_;
  90.    while(_loc1_ < 12)
  91.    {
  92.       t1_mc = game_mc["leftTile_" + _loc1_];
  93.       t2_mc = game_mc["rightTile_" + _loc1_];
  94.       t1_mc._y = t1_mc.y - 10;
  95.       t2_mc._y = t2_mc.y - 10;
  96.       _loc1_ = _loc1_ + 1;
  97.    }
  98. }
  99. function GameOver()
  100. {
  101.    game_mc.removeMovieClip();
  102.    gotoAndStop("title");
  103. }
  104. function NextLevel()
  105. {
  106.    level++;
  107.    setLevelVars();
  108.    removedTiles = 0;
  109.    loadTile();
  110. }
  111. function loadTile()
  112. {
  113.    var _loc1_ = game_mc.leftTile_11;
  114.    var _loc2_ = game_mc.rightTile_11;
  115.    if(_loc1_._visible == true || _loc2_._visible == true)
  116.    {
  117.       GameOver_mc._visible = true;
  118.    }
  119.    else if(removedTiles >= 35)
  120.    {
  121.       LevelCleared_mc._visible = true;
  122.    }
  123.    else
  124.    {
  125.       game_mc.control_mc.tile1_mc._x = game_mc.control_mc.tile1_mc.x;
  126.       game_mc.control_mc.tile2_mc._x = game_mc.control_mc.tile2_mc.x;
  127.       tile1 = tile1_mc._currentframe;
  128.       tile2 = tile2_mc._currentframe;
  129.       if(game_mc._xmouse <= game_mc.meter_bar_mc._x)
  130.       {
  131.          game_mc.control_mc.tile1_mc.gotoAndStop(tile1);
  132.          game_mc.control_mc.tile2_mc.gotoAndStop(tile2);
  133.       }
  134.       else
  135.       {
  136.          game_mc.control_mc.tile1_mc.gotoAndStop(tile2);
  137.          game_mc.control_mc.tile2_mc.gotoAndStop(tile1);
  138.       }
  139.       game_mc.meter_bar_mc._yscale = 0;
  140.       setNextTile();
  141.       game_mc.control_mc.tile1_mc._visible = true;
  142.       game_mc.control_mc.tile2_mc._visible = true;
  143.       game_mc.control_mc.gotoAndPlay(2);
  144.    }
  145. }
  146. function setNextTile()
  147. {
  148.    tile1_mc.gotoAndStop(random(tileColors) + 1);
  149.    tile2_mc.gotoAndStop(random(tileColors) + 1);
  150. }
  151. function pauseGame()
  152. {
  153.    GamePaused_mc._visible = true;
  154.    paused = true;
  155. }
  156. function unpause()
  157. {
  158.    GamePaused_mc._visible = false;
  159.    paused = false;
  160. }
  161. var i = 0;
  162. var lastUp = null;
  163. var pushing = false;
  164. var stacking = false;
  165. var pushedAt = 0;
  166. var loaded = false;
  167. var pushingInt = 0;
  168. var cleaning2var = 0;
  169. var tile1 = 0;
  170. var tile2 = 0;
  171. var score = 0;
  172. var level = 1;
  173. var scoreFactor = 1;
  174. var removedTiles = 0;
  175. var barSpeed = 0.4;
  176. var tileColors = 4;
  177. var paused = false;
  178. LevelCleared_mc._visible = false;
  179. GameOver_mc._visible = false;
  180. GamePaused_mc._visible = false;
  181. setLevelVars();
  182. game_mc.control_mc.tile1_mc.x = game_mc.control_mc.tile1_mc._x;
  183. game_mc.control_mc.tile2_mc.x = game_mc.control_mc.tile2_mc._x;
  184. setNextTile();
  185. loadTile();
  186. i = 0;
  187. while(i < 12)
  188. {
  189.    var leftTile_mc = game_mc.attachMovie("tile_mc","leftTile_" + i,112 + i);
  190.    var ruler_mc = game_mc.attachMovie("ruler_mc","ruler_" + i,50 + i);
  191.    ruler_mc._x = 0;
  192.    ruler_mc._y = - i * (leftTile_mc._height + 2);
  193.    ruler_mc._visible = true;
  194.    leftTile_mc._x = 0;
  195.    leftTile_mc._y = - i * (leftTile_mc._height + 2);
  196.    leftTile_mc._visible = false;
  197.    leftTile_mc.y = leftTile_mc._y;
  198.    leftTile_mc.gotoAndStop(1);
  199.    leftTile.marked = false;
  200.    var rightTile_mc = game_mc.attachMovie("tile_mc","rightTile_" + i,100 + i);
  201.    var ruler_mc = game_mc.attachMovie("ruler_mc","ruler2_" + i,65 + i);
  202.    ruler_mc._x = 293;
  203.    ruler_mc._y = - i * (leftTile_mc._height + 2);
  204.    ruler_mc._visible = true;
  205.    rightTile_mc._x = 248;
  206.    rightTile_mc._y = - i * (rightTile_mc._height + 2);
  207.    rightTile_mc._visible = false;
  208.    rightTile_mc.y = rightTile_mc._y;
  209.    rightTile_mc.gotoAndStop(1);
  210.    rightTile.marked = false;
  211.    i++;
  212. }
  213. resetAllTilesPosition();
  214. game_mc.onMouseDown = function()
  215. {
  216.    if(game_mc.hitTest(_xmouse,_ymouse,true))
  217.    {
  218.       if(GamePaused_mc._visible == false)
  219.       {
  220.          released();
  221.       }
  222.    }
  223. };
  224. game_mc.onEnterFrame = function()
  225. {
  226.    if(paused != true)
  227.    {
  228.       var txtScoreValue = Number(txtScore.text);
  229.       dx = score - txtScoreValue;
  230.       if(dx > 0)
  231.       {
  232.          txtScore.text = txtScoreValue + 1;
  233.       }
  234.       if(dx < 0)
  235.       {
  236.          txtScore.text = txtScoreValue - 1;
  237.       }
  238.       txtLevel.text = level;
  239.       if(loaded == true)
  240.       {
  241.          if(game_mc._xmouse <= game_mc.meter_bar_mc._x)
  242.          {
  243.             game_mc.control_mc.tile1_mc.gotoAndStop(tile1);
  244.             game_mc.control_mc.tile2_mc.gotoAndStop(tile2);
  245.          }
  246.          else
  247.          {
  248.             game_mc.control_mc.tile1_mc.gotoAndStop(tile2);
  249.             game_mc.control_mc.tile2_mc.gotoAndStop(tile1);
  250.          }
  251.          var _loc3_ = int(game_mc._ymouse / 27);
  252.          if(_loc3_ < -11)
  253.          {
  254.             _loc3_ = -11;
  255.          }
  256.          if(_loc3_ > 0)
  257.          {
  258.             _loc3_ = 0;
  259.          }
  260.          _loc3_ = Math.abs(_loc3_);
  261.          game_mc.control_mc._y = (- _loc3_) * 27;
  262.          if(lastUp != _loc3_)
  263.          {
  264.             lastUp = _loc3_;
  265.             resetAllTilesPosition();
  266.             setAllTilesPosition(lastUp);
  267.          }
  268.          game_mc.meter_bar_mc._yscale += barSpeed;
  269.          if(game_mc.meter_bar_mc._yscale >= 100)
  270.          {
  271.             released();
  272.          }
  273.       }
  274.       if(cleaning == true)
  275.       {
  276.          var _loc2_ = false;
  277.          var _loc1_ = 0;
  278.          _loc1_ = 1;
  279.          while(_loc1_ < 11)
  280.          {
  281.             t1_mc = game_mc["leftTile_" + _loc1_];
  282.             t2_mc = game_mc["rightTile_" + _loc1_];
  283.             t1a_mc = game_mc["leftTile_" + (_loc1_ - 1)];
  284.             t2a_mc = game_mc["rightTile_" + (_loc1_ - 1)];
  285.             t1b_mc = game_mc["leftTile_" + (_loc1_ + 1)];
  286.             t2b_mc = game_mc["rightTile_" + (_loc1_ + 1)];
  287.             if(t1_mc._visible == true && t1a_mc._visible == true && t1b_mc._visible == true)
  288.             {
  289.                if(t1_mc._currentframe == t1a_mc._currentframe && t1_mc._currentframe == t1b_mc._currentframe)
  290.                {
  291.                   t1_mc.marked = t1a_mc.marked = t1b_mc.marked = true;
  292.                   _loc2_ = true;
  293.                }
  294.             }
  295.             if(t2_mc._visible == true && t2a_mc._visible == true && t2b_mc._visible == true)
  296.             {
  297.                if(t2_mc._currentframe == t2a_mc._currentframe && t2_mc._currentframe == t2b_mc._currentframe)
  298.                {
  299.                   t2_mc.marked = t2a_mc.marked = t2b_mc.marked = true;
  300.                   _loc2_ = true;
  301.                }
  302.             }
  303.             _loc1_ = _loc1_ + 1;
  304.          }
  305.          _loc1_ = 0;
  306.          while(_loc1_ < 12)
  307.          {
  308.             t1_mc = game_mc["leftTile_" + _loc1_];
  309.             t2_mc = game_mc["rightTile_" + _loc1_];
  310.             if(t1_mc.marked == true)
  311.             {
  312.                score += 5 * scoreFactor;
  313.                scoreFactor++;
  314.                removedTiles++;
  315.             }
  316.             if(t2_mc.marked == true)
  317.             {
  318.                score += 5 * scoreFactor;
  319.                scoreFactor++;
  320.                removedTiles++;
  321.             }
  322.             _loc1_ = _loc1_ + 1;
  323.          }
  324.          if(_loc2_ == true)
  325.          {
  326.             cleaning = false;
  327.             cleaning2var = 0;
  328.             cleaning2 = true;
  329.          }
  330.          else
  331.          {
  332.             cleaning = false;
  333.             loadTile();
  334.          }
  335.       }
  336.       if(cleaning2 == true)
  337.       {
  338.          _loc1_ = 0;
  339.          while(_loc1_ < 12)
  340.          {
  341.             t1_mc = game_mc["leftTile_" + _loc1_];
  342.             t2_mc = game_mc["rightTile_" + _loc1_];
  343.             if(t1_mc.marked == true)
  344.             {
  345.                if(cleaning2var <= 10)
  346.                {
  347.                   t1_mc._alpha = 100 - cleaning2var * 1;
  348.                }
  349.                else
  350.                {
  351.                   t1_mc.marked = false;
  352.                   t1_mc._visible = false;
  353.                   t1_mc._alpha = 100;
  354.                }
  355.             }
  356.             if(t2_mc.marked == true)
  357.             {
  358.                if(cleaning2var <= 10)
  359.                {
  360.                   t2_mc._alpha = 100 - cleaning2var * 10;
  361.                }
  362.                else
  363.                {
  364.                   t2_mc.marked = false;
  365.                   t2_mc._visible = false;
  366.                   t2_mc._alpha = 100;
  367.                }
  368.             }
  369.             _loc1_ = _loc1_ + 1;
  370.          }
  371.          if(cleaning2var <= 10)
  372.          {
  373.             cleaning2var++;
  374.          }
  375.          else
  376.          {
  377.             cleaning2 = false;
  378.             stacking = true;
  379.          }
  380.       }
  381.       if(stacking == true)
  382.       {
  383.          _loc2_ = false;
  384.          _loc1_ = 0;
  385.          _loc1_ = 1;
  386.          while(_loc1_ < 12)
  387.          {
  388.             t1_mc = game_mc["leftTile_" + _loc1_];
  389.             t2_mc = game_mc["rightTile_" + _loc1_];
  390.             t1a_mc = game_mc["leftTile_" + (_loc1_ - 1)];
  391.             t2a_mc = game_mc["rightTile_" + (_loc1_ - 1)];
  392.             if(t1_mc._visible == true && t1a_mc._visible == false)
  393.             {
  394.                t1a_mc.gotoAndStop(t1_mc._currentframe);
  395.                t1_mc._visible = false;
  396.                t1a_mc._visible = true;
  397.                _loc2_ = true;
  398.             }
  399.             if(t2_mc._visible == true && t2a_mc._visible == false)
  400.             {
  401.                t2a_mc.gotoAndStop(t2_mc._currentframe);
  402.                t2_mc._visible = false;
  403.                t2a_mc._visible = true;
  404.                _loc2_ = true;
  405.             }
  406.             _loc1_ = _loc1_ + 1;
  407.          }
  408.          if(_loc2_ == false)
  409.          {
  410.             stacking = false;
  411.             cleaning = true;
  412.          }
  413.       }
  414.       if(pushing == true)
  415.       {
  416.          if(pushingInt < 5)
  417.          {
  418.             game_mc.control_mc.tile1_mc._x -= 15;
  419.             game_mc.control_mc.tile2_mc._x += 15;
  420.             pushingInt++;
  421.          }
  422.          else
  423.          {
  424.             pushingInt = 0;
  425.             pushing = false;
  426.             game_mc.control_mc.tile1_mc._visible = false;
  427.             game_mc.control_mc.tile2_mc._visible = false;
  428.             t1_mc = game_mc["leftTile_" + pushedAt];
  429.             t2_mc = game_mc["rightTile_" + pushedAt];
  430.             t1_mc._visible = true;
  431.             t2_mc._visible = true;
  432.             t1_mc.gotoAndStop(game_mc.control_mc.tile1_mc._currentframe);
  433.             t2_mc.gotoAndStop(game_mc.control_mc.tile2_mc._currentframe);
  434.             stacking = true;
  435.          }
  436.       }
  437.    }
  438. };
  439. stop();
  440.